
// using UnityEngine;
// using UnityEditor;
// using System.Collections.Generic;
// using System.IO;

// namespace YF.Art
// {
//     public class AutoImporter : AssetPostprocessor
//     {
//         private static List<string> _pendingRenamePaths = new List<string>();

//         void OnPostprocessTexture(Texture2D texture)
//         {
//             int width = texture.width;
//             int height = texture.height;
//             if (width > 512 || height > 512)
//             {
//                 // 标记需要重命名的纹理
//                 _pendingRenamePaths.Add(assetPath);
//             }
//         }

//         // 所有资源导入完成后触发
//         static void OnPostprocessAllAssets(string[] imported, string[] deleted, string[] moved, string[] movedFrom)
//         {
//             if (_pendingRenamePaths.Count == 0) return;

//             // 延迟一帧执行，确保导入管线完全结束
//             EditorApplication.delayCall += () =>
//             {
//                 foreach (var path in _pendingRenamePaths)
//                 {
//                     RenameTexture(path);
//                 }
//                 _pendingRenamePaths.Clear();
//             };
//         }

//         private static void RenameTexture(string originalPath)
//         {
//             TextureImporter importer = AssetImporter.GetAtPath(originalPath) as TextureImporter;
//             if (importer == null) return;

//             // 获取纹理处理后的属性（示例：分辨率）
//             int width = 0, height = 0;
//             System.Reflection.MethodInfo method = typeof(TextureImporter).GetMethod("GetWidthAndHeight",
//                 System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
//             if (method != null)
//             {
//                 object[] args = new object[] { 0, 0 };
//                 method.Invoke(importer, args);
//                 width = (int)args;
//                 height = (int)args;
//             }

//             // 生成新名称（示例：原文件名_分辨率）
//             string newName = $"{System.IO.Path.GetFileNameWithoutExtension(originalPath)}_{width}x{height}";
//             string newPath = System.IO.Path.Combine(
//                 System.IO.Path.GetDirectoryName(originalPath),
//                 newName + System.IO.Path.GetExtension(originalPath));

//             // 避免重命名冲突
//             if (newPath == originalPath) return;
//             if (System.IO.File.Exists(newPath))
//             {
//                 Debug.LogError($"重命名失败: 文件已存在 {newPath}");
//                 return;
//             }

//             // 执行重命名
//             string error = AssetDatabase.MoveAsset(originalPath, newPath);
//             if (!string.IsNullOrEmpty(error))
//             {
//                 Debug.LogError($"重命名失败: {error}");
//             }
//             else
//             {
//                 Debug.Log($"已重命名: {originalPath} -> {newPath}");
//                 AssetDatabase.Refresh();
//             }
//         }



//     }
// }
